\doxysection{FLASH\+\_\+\+OBProgram\+Init\+Type\+Def Struct Reference}
\hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def}{}\label{struct_f_l_a_s_h___o_b_program_init_type_def}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}


FLASH Option Bytes Program structure definition.  




{\ttfamily \#include $<$stm32h7xx\+\_\+hal\+\_\+flash\+\_\+ex.\+h$>$}

\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a46bffc2a63ea02e15b9187856535d890}{Option\+Type}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a2607ba046f7a3af46e7209b8f1e9e20d}{WRPState}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_aa3db423f4b3038a56b67ca2d48af79ff}{WRPSector}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a1f613ba2b87cf9caa84dc1d493e96dae}{RDPLevel}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a51a6af507ed8f57590f19b6ba6c9c33d}{BORLevel}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a71770e44263750ea731fee8c2d74b307}{USERType}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_aeee4c65d539a25d8bfc7f83c7dc29012}{USERConfig}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a5fdf437b5f79d79945f5c0777f76d0eb}{Banks}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a33a5b63814d8c38e158776c0c9c09a53}{PCROPConfig}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_ad0597d5c1d37131b02b2b4abecb14b2d}{PCROPStart\+Addr}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_ad38368cf5344d6071cc1b6211289f274}{PCROPEnd\+Addr}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_abdae88484117aeab84dfef0b37dc92df}{Boot\+Config}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a02ba9f1219abea2a6be8522095dc7f09}{Boot\+Addr0}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a2efa2648f7de9fbc82392ff117c390cf}{Boot\+Addr1}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a415be39a396d41f4c8f2ebbb78a5779c}{Secure\+Area\+Config}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_a655813b01114752ce1dda79eb0b57561}{Secure\+Area\+Start\+Addr}}
\item 
uint32\+\_\+t \mbox{\hyperlink{struct_f_l_a_s_h___o_b_program_init_type_def_aab19457e9f329c653db2dabf771dda3d}{Secure\+Area\+End\+Addr}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
FLASH Option Bytes Program structure definition. 

\label{doc-variable-members}
\Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_doc-variable-members}
\doxysubsection{Member Data Documentation}
\Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a5fdf437b5f79d79945f5c0777f76d0eb}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!Banks@{Banks}}
\index{Banks@{Banks}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{Banks}{Banks}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a5fdf437b5f79d79945f5c0777f76d0eb} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Banks}

Select banks for WRP , PCROP and secure area config . This parameter must be a value of \doxylink{group___f_l_a_s_h_ex___banks}{FLASH Banks} \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a02ba9f1219abea2a6be8522095dc7f09}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!BootAddr0@{BootAddr0}}
\index{BootAddr0@{BootAddr0}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{BootAddr0}{BootAddr0}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a02ba9f1219abea2a6be8522095dc7f09} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Boot\+Addr0}

Boot Address 0. This parameter must be a value between begin and end of a bank \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a2efa2648f7de9fbc82392ff117c390cf}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!BootAddr1@{BootAddr1}}
\index{BootAddr1@{BootAddr1}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{BootAddr1}{BootAddr1}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a2efa2648f7de9fbc82392ff117c390cf} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Boot\+Addr1}

Boot Address 1. This parameter must be a value between begin and end of a bank \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_abdae88484117aeab84dfef0b37dc92df}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!BootConfig@{BootConfig}}
\index{BootConfig@{BootConfig}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{BootConfig}{BootConfig}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_abdae88484117aeab84dfef0b37dc92df} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Boot\+Config}

Specifies if the Boot Address to be configured BOOT\+\_\+\+ADD0, BOOT\+\_\+\+ADD1 or both. This parameter must be a value of \doxylink{group___f_l_a_s_h_ex___o_b___b_o_o_t___o_p_t_i_o_n}{FLASHEx OB BOOT OPTION} enumeration \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a51a6af507ed8f57590f19b6ba6c9c33d}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!BORLevel@{BORLevel}}
\index{BORLevel@{BORLevel}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{BORLevel}{BORLevel}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a51a6af507ed8f57590f19b6ba6c9c33d} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+BORLevel}

Set the BOR Level. This parameter can be a value of \doxylink{group___f_l_a_s_h_ex___b_o_r___reset___level}{FLASH BOR Reset Level} \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a46bffc2a63ea02e15b9187856535d890}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!OptionType@{OptionType}}
\index{OptionType@{OptionType}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{OptionType}{OptionType}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a46bffc2a63ea02e15b9187856535d890} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Option\+Type}

Option byte to be configured. This parameter can be a value of \doxylink{group___f_l_a_s_h_ex___option___type}{FLASH Option Type} \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a33a5b63814d8c38e158776c0c9c09a53}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!PCROPConfig@{PCROPConfig}}
\index{PCROPConfig@{PCROPConfig}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{PCROPConfig}{PCROPConfig}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a33a5b63814d8c38e158776c0c9c09a53} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+PCROPConfig}

specifies if the PCROP area shall be erased or not when RDP level decreased from Level 1 to Level 0 or during a mass erase. This parameter must be a value of \doxylink{group___f_l_a_s_h_ex___o_b___p_c_r_o_p___r_d_p}{FLASHEx OB PCROP RDP} enumeration \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_ad38368cf5344d6071cc1b6211289f274}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!PCROPEndAddr@{PCROPEndAddr}}
\index{PCROPEndAddr@{PCROPEndAddr}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{PCROPEndAddr}{PCROPEndAddr}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_ad38368cf5344d6071cc1b6211289f274} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+PCROPEnd\+Addr}

PCROP End address (used for OPTIONBYTE\+\_\+\+PCROP). This parameter must be a value between PCROP Start address and end of a bank \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_ad0597d5c1d37131b02b2b4abecb14b2d}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!PCROPStartAddr@{PCROPStartAddr}}
\index{PCROPStartAddr@{PCROPStartAddr}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{PCROPStartAddr}{PCROPStartAddr}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_ad0597d5c1d37131b02b2b4abecb14b2d} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+PCROPStart\+Addr}

PCROP Start address (used for OPTIONBYTE\+\_\+\+PCROP). This parameter must be a value between begin and end of a bank \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a1f613ba2b87cf9caa84dc1d493e96dae}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!RDPLevel@{RDPLevel}}
\index{RDPLevel@{RDPLevel}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{RDPLevel}{RDPLevel}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a1f613ba2b87cf9caa84dc1d493e96dae} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+RDPLevel}

Set the read protection level. This parameter can be a value of \doxylink{group___f_l_a_s_h_ex___option___bytes___read___protection}{FLASH Option Bytes Read Protection} \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a415be39a396d41f4c8f2ebbb78a5779c}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!SecureAreaConfig@{SecureAreaConfig}}
\index{SecureAreaConfig@{SecureAreaConfig}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{SecureAreaConfig}{SecureAreaConfig}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a415be39a396d41f4c8f2ebbb78a5779c} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Secure\+Area\+Config}

specifies if the bank secured area shall be erased or not when RDP level decreased from Level 1 to Level 0 or during a mass erase. This parameter must be a value of \doxylink{group___f_l_a_s_h_ex___o_b___s_e_c_u_r_e___r_d_p}{FLASHEx OB SECURE RDP} enumeration \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_aab19457e9f329c653db2dabf771dda3d}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!SecureAreaEndAddr@{SecureAreaEndAddr}}
\index{SecureAreaEndAddr@{SecureAreaEndAddr}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{SecureAreaEndAddr}{SecureAreaEndAddr}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_aab19457e9f329c653db2dabf771dda3d} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Secure\+Area\+End\+Addr}

Bank Secure area End address. This parameter must be a value between Secure Area Start address and end address of a bank1 \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a655813b01114752ce1dda79eb0b57561}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!SecureAreaStartAddr@{SecureAreaStartAddr}}
\index{SecureAreaStartAddr@{SecureAreaStartAddr}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{SecureAreaStartAddr}{SecureAreaStartAddr}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a655813b01114752ce1dda79eb0b57561} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+Secure\+Area\+Start\+Addr}

Bank Secure area Start address. This parameter must be a value between begin address and end address of bank1 \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_aeee4c65d539a25d8bfc7f83c7dc29012}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!USERConfig@{USERConfig}}
\index{USERConfig@{USERConfig}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{USERConfig}{USERConfig}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_aeee4c65d539a25d8bfc7f83c7dc29012} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+USERConfig}

Program the FLASH User Option Byte\+: IWDG\+\_\+\+SW / RST\+\_\+\+STOP / RST\+\_\+\+STDBY / IWDG\+\_\+\+FREEZE\+\_\+\+STOP / IWDG\+\_\+\+FREEZE\+\_\+\+SANDBY / IO\+\_\+\+HSLV / SWAP\+\_\+\+BANK\+\_\+\+OPT \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a71770e44263750ea731fee8c2d74b307}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!USERType@{USERType}}
\index{USERType@{USERType}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{USERType}{USERType}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a71770e44263750ea731fee8c2d74b307} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+USERType}

User option byte(s) to be configured (used for OPTIONBYTE\+\_\+\+USER). This parameter can be a combination of \doxylink{group___f_l_a_s_h_ex___o_b___u_s_e_r___type}{FLASHEx OB USER Type} \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_aa3db423f4b3038a56b67ca2d48af79ff}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!WRPSector@{WRPSector}}
\index{WRPSector@{WRPSector}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{WRPSector}{WRPSector}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_aa3db423f4b3038a56b67ca2d48af79ff} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+WRPSector}

Specifies the sector(s) to be write protected. The value of this parameter depend on device used within the same series \Hypertarget{struct_f_l_a_s_h___o_b_program_init_type_def_a2607ba046f7a3af46e7209b8f1e9e20d}\index{FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}!WRPState@{WRPState}}
\index{WRPState@{WRPState}!FLASH\_OBProgramInitTypeDef@{FLASH\_OBProgramInitTypeDef}}
\doxysubsubsection{\texorpdfstring{WRPState}{WRPState}}
{\footnotesize\ttfamily \label{struct_f_l_a_s_h___o_b_program_init_type_def_a2607ba046f7a3af46e7209b8f1e9e20d} 
uint32\+\_\+t FLASH\+\_\+\+OBProgram\+Init\+Type\+Def\+::\+WRPState}

Write protection activation or deactivation. This parameter can be a value of \doxylink{group___f_l_a_s_h_ex___w_r_p___state}{FLASH WRP State} 

The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
C\+:/\+Users/\+ASUS/\+Desktop/dm-\/ctrl\+H7-\/balance-\/9025test/\+Drivers/\+STM32\+H7xx\+\_\+\+HAL\+\_\+\+Driver/\+Inc/\mbox{\hyperlink{stm32h7xx__hal__flash__ex_8h}{stm32h7xx\+\_\+hal\+\_\+flash\+\_\+ex.\+h}}\end{DoxyCompactItemize}
